/**
 * 版权所有 2009-2012山东新北洋信息技术股份有限公司
 * 保留所有权利。
 */
package com.linyaonan.leetcode.easy._538;

/**
 * @ProjectName: leetcode
 * @Package: com.linyaonan.leetcode.easy._538
 * @ClassName: ConvertBst
 * @Author: linyaonan
 * @Date: 2020/1/2 10:40
 */
public class ConvertBst {

    private int addCount = 0;

    public TreeNode convertBST(TreeNode root) {
        if (root == null) {
            return null;
        }
        nBfs(root);
        return root;
    }

    private void nBfs(TreeNode node) {
        if (node == null) {
            return;
        }
        nBfs(node.right);
        node.val += addCount;
        addCount = node.val;
        nBfs(node.left);
    }
}
